package com.it.schoolhomeos.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import java.time.LocalDate;

@Data
@Schema(description = "考勤提交数据传输对象")
public class AttendanceSubmitDTO {
    @NotNull(message = "学生ID不能为空")
    @Schema(
        description = "学生ID",
        accessMode = Schema.AccessMode.READ_WRITE,
        requiredMode = Schema.RequiredMode.REQUIRED
    )
    private Long studentId;
    
    @NotNull(message = "考勤状态不能为空")
    @Schema(
        description = "考勤状态：PRESENT(出勤)、ABSENT(缺勤)、LEAVE(请假)",
        accessMode = Schema.AccessMode.READ_WRITE,
        requiredMode = Schema.RequiredMode.REQUIRED
    )
    private String status; // PRESENT, ABSENT, LEAVE
    
    @NotNull(message = "考勤日期不能为空")
    @Schema(
        description = "考勤日期，格式：YYYY-MM-DD",
        accessMode = Schema.AccessMode.READ_WRITE,
        requiredMode = Schema.RequiredMode.REQUIRED,
        example = "2025-03-11"
    )
    private LocalDate date;
}
